package com.wing.sell.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wing.sell.model.entity.FinishedOrderDetail;
import com.wing.sell.model.request.DeliveryRecordForm;
import com.wing.sell.model.response.FinishedOrderDetailExcelVo;
import com.wing.sell.model.response.FinishedOrderDetailVo;
import com.wing.sell.model.response.OrderSkuDetailSearchVo;

import java.util.List;
import java.util.Map;


/**
 * 销售订单表-Service
 *
 * @author
 */
public interface FinishedOrderDetailService extends IService<FinishedOrderDetail> {

    /**
     * 获取成品订单中的sku信息
     * @param orderId 订单id
     * @param warehouseId 仓库id
     * @return
     */
    List<OrderSkuDetailSearchVo> listByInfo(Long orderId, Long warehouseId);


    /**
     *
     * @param deliveryRecordForm
     * @return
     */
    Integer generateOrderResult(DeliveryRecordForm deliveryRecordForm);

    /**
     * 查询成品订单产品信息
     * @param orderId
     * @return
     */
    List<OrderSkuDetailSearchVo> listByInfoBy(Long orderId);

    /**
     * 查询成品销售订单明细
     * @param pg
     * @param params
     * @return
     */
    Page<FinishedOrderDetailVo> pageList4app(Page<FinishedOrderDetailVo> pg, Map<String, Object> params);

    /**
     * 导出成品销售明细
     * @param params
     * @return
     */
    List<FinishedOrderDetailExcelVo> exportInProductInfoDetail(Map<String, Object> params);
}
